package com.ysx.common.exception;



/**
 * 抛出自定义异常时在这里增加一个枚举池
 * 业务异常枚举类
 * 用于定义系统中常见的业务异常类型及其描述信息
 */
public enum BusinessExceptionEnum {
    /**
     * 手机号已经注册异常
     */
    MEMBER_MOBILE_EXIST("手机号已经注册"),

    /**
     * 手机号不存在异常，需要先获取短信验证码
     */
    MEMBER_MOBILE_NOT_EXIST("请先获取短信验证码"),

    /**
     * 短信验证码错误异常
     */
    MEMBER_MOBILE_CODE_EXIST("短信验证码错误"),
    
    /**
     * 车站名称已存在异常
     */
    BUSINESS_STATION_NAME_UNIQUE_ERROR("车站已存在"),
    
    /**
     * 同车次站序已存在异常
     */
    BUSINESS_TRAIN_STATION_INDEX_UNIQUE_ERROR("同车次站序已存在"),
    
    /**
     * 同车次站名已存在异常
     */
    BUSINESS_TRAIN_STATION_NAME_UNIQUE_ERROR("同车次站名已存在"),
    
    /**
     * 同车次厢号已存在异常
     */
    BUSINESS_TRAIN_CARRIAGE_INDEX_UNIQUE_ERROR("同车次厢号已存在"),

    /**
     * 车次编号已存在异常
     */
    BUSINESS_TRAIN_CODE_UNIQUE_ERROR("车次编号已存在");

    /**
     * 异常描述信息
     */
    private String desc;

    /**
     * 构造函数
     * @param desc 异常描述信息
     */
    BusinessExceptionEnum(String desc) {
        this.desc = desc;
    }

    /**
     * 获取异常描述信息
     * @return 异常描述字符串
     */
    public String getDesc() {
        return desc;
    }

    /**
     * 设置异常描述信息
     * @param desc 异常描述字符串
     */
    public void setDesc(String desc) {
        this.desc = desc;
    }


    /**
     * 重写toString方法，返回枚举对象的字符串表示
     * @return 包含描述信息的字符串
     */
    @Override
    public String toString() {
        return "BusinessExceptionEnum{" +
                "desc='" + desc + '\'' +
                '}';
    }

}